1. Field
The present invention generally relates to mobile devices for use in mobile commerce, and more particularly to systems, methods, and computer program products for installing a service on a mobile device.
2. Related Art
In a mobile commerce environment, service provider transactions, accounts, products and the like often are stored and processed in a mobile wallet application on a client (e.g., customer) mobile device. A service provider (SP) is a company, organization, entity, or the like, that provides services to customers or consumers. Examples of service providers include account-issuing entities such as banks, merchants, card associations, marketing companies, and transit authorities. A service may be, for example, an applet, application, set of applications or set of code providing an activity, capability, functionality, work, or use permitted or provided by a service provider, such as a payment service, credit, debit, checking, gift, offer or loyalty service, transit pass service, and the like.
Services corresponding to respective service providers may be stored on a mobile device. For example, a service offered by a service provider (e.g., a bank) may be enabled on a mobile device in order to conduct a transaction using that service and/or credential. A customer may then use the mobile device to conduct a transaction, such as a contactless payment, at a point-of-sale, although numerous other transactions or interactions are also possible.
Often, service providers release multiple versions of services. For example, new versions of a service may be released to incorporate updates or changes, fix bugs in previous versions, or apply a security patch. Moreover, multiple versions of a service may be required for new or different types of mobile devices and/or secure elements on the mobile devices.
Nevertheless, difficulties can arise in the context of compatibility between service versions and secure elements. For example, a service version which is inappropriate for a particular type of secure element may function less efficiently, incorrectly, or not at all. These problems are exacerbated as the number and types of mobile devices, secure elements and service versions continue to grow and change.
Therefore, one technical challenge involves dynamically determining, in an efficient and effective manner, which version of a service to install on a particular mobile device or secure element. Another technical challenge involves determining the most efficient installation of a new service when needed, in order to reduce the use of resources or storage of code on a secure element.